﻿namespace MvcGMaps.Models
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;

    [MetadataType(typeof(MarkerMetaData))]
    public partial class Marker
    {
        public Marker()
        {

        }
        public Marker(decimal lat, decimal lng)
        {
            Latitude = lat;
            Longitude = lng;
            AddedDate = DateTime.Now;
            TypeID = 1;
            StatusID = 1;
        }
    }


    public class MarkerMetaData
    {
        public int MarkerID { get; set; }

        [Required(ErrorMessage = "Введите дату события")]
        [Display(Name = "Дата")]
        public System.DateTime AddedDate { get; set; }
        
        [Required]
        [Display(Name = "Широта")]
        public decimal Latitude { get; set; }
        
        [Required]
        [Display(Name = "Долгота")]
        public decimal Longitude { get; set; }

        [Required(ErrorMessage = "Выберите тип события")]
        [Display(Name = "Тип")]
        public int TypeID { get; set; }

        [Required(ErrorMessage = "Выберите статус события")]
        [Display(Name = "Статус")]
        public int StatusID { get; set; }
        
        [MaxLength(255, ErrorMessage = "Комментарий должен быть короче 255 символов")]
        [Display(Name = "Комментарий")]
        public string Commentary { get; set; }
    }
}